<?php

    try {

	    require_once '../../controller/controller.inc.php';
		$usuario->isAuthorizedView(Operacao::SELECAO_INFORMARCANDIDATO);
		
		#Inicialização de Variáveis
		$bloquearNome = FALSE;
		$candidato = new Candidato();
		$candidatovaga = new CandidatoVaga();
		$disabledCampos = '';
		
		$selecao = new Selecao( $_GET['id'] );
		
		# Carrega a Vaga
        $vaga = new Vaga( $selecao->vagaid );

        #ID do Contrato
        $contratoid = $vaga->contratoid;
        $salario = new Salario( NULL, $contratoid, $vaga->cargoid );
        
        if ( isset( $_POST['btnAcao'] ) ){
            $acao = $_POST['btnAcao'];
            switch ( $acao ){
                
                case 'Pesquisar':
	        		
                    $cpf = TUtils::CpfToNum( $_POST["txtCpf"] );
                    
                    if ( !TUtils::CpfValidacao( $cpf ) )
    		            throw new Exception("CPF inválido.");
                    
                    $resultSet = $candidato->listar( array ( "campo" => "cpf", "operador" => "=", "valor" => $cpf ) );
	                $candidatoRs = pg_fetch_object($resultSet);
	    			
	                # Candidato existe no SGC
	                if ( pg_num_rows( $resultSet ) > 0 ){
	                	
	                    if ( $candidatoRs->situacao == 'V' OR $candidatoRs->situacao == 'N' ){
	                	    $candidato = new Candidato( $candidatoRs->candidatoid );
	                	} 
	                	else {
	                	    $candidato = new Candidato();
	                	    $candidato->candidatoid = $candidatoRs->candidatoid;
	                	    $candidato->cpf = $_POST['txtCpf'];
	                	    $bloquearNome = TRUE;
	                	}
	                }
	                else {
	                    //Busca no Consist
	                    $criterio = array();
	                    $criterio['precondicao'] = "cpf = '" . $_POST['txtCpf'] . "'";
	                    $criterio['orderBy']     = "dtcadastro";
	                    $criterio['order']       = "DESC LIMIT 1";
	                    
	                    $viewConsist = new ViewConsultaConsist();
	                    $resultConsist = $viewConsist->listar($criterio);
	                    
	                    $candidato = new Candidato();
	                    $candidato->cpf = $_POST['txtCpf'];
	                    
	                    // Se encontrar no consist, trazer o nome
	                    if (pg_num_rows($resultConsist) > 0) {
	                        $resultConsist = pg_fetch_object($resultConsist, 0);
	                        $candidato->nome = $resultConsist->nmpessoa;
	                        $bloquearNome = FALSE;
	                    }
	                    else {
	                        $bloquearNome = TRUE;
	                    }
	                }
		                		        	 	
	        	 	break;
	        	 	
                case 'Salvar':
                    
                    $camposIniciais = array();
                    $camposIniciais['cpf']       = $_POST['cpf'];
                    $camposIniciais['nome']      = isset($_POST['txtNome']) ? $_POST['txtNome'] : $_POST['nome'];
                    $camposIniciais['contato']   = $_POST['txtContato'];
                    $camposIniciais['telefone2'] = $_POST['txtTelefone2'];
                    
                    $selecao->inserirCandidato( $camposIniciais, TRUE );
                    
                    header( 'location: selecao.php?id=' . $_GET['id'] . '&message=insercao' );
                    
                    break;
            }
        }
        
        $disabledCampos = (isset($_POST['btnAcao']) AND $bloquearNome == FALSE AND isset($_POST['txtCpf'])) ? 'disabled="disabled"' : '';
		
	} catch(exception $e){
		$erro = $e->getMessage();
	}